package com.example.demo.demos.web.FileReader;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;

/**
 * @author : jwp
 * @description :
 * @createDate : 2024/12/13 16:08
 */
public class FileReaderDemo02 {
    public static void main(String[] args) {
        // 输入和输出文件路径
//        String inputFilePath = "path.js";  // 请替换为你的 JS 文件路径
        String inputFilePath = "output.txt";  // 请替换为你的 JS 文件路径
        String outputFilePath = "output-02.txt";  // 输出文件路径

        // 要匹配的前缀
        String[] prefixes = {"AUTH", "API", "LIGHTNING", "NRCC"};

        try (
                // 使用 BufferedReader 读取文件
                BufferedReader reader = new BufferedReader(new FileReader(inputFilePath));
                // 使用 BufferedWriter 写入文件
                BufferedWriter writer = new BufferedWriter(new FileWriter(outputFilePath))
        ) {
            String line;
            // 逐行读取文件
            while ((line = reader.readLine()) != null) {
                // 检查行是否以指定的前缀之一开头
                for (String prefix : prefixes) {
                    if(line.trim().contains("{")){
                        continue;
                    }
                    if(line.trim().contains("  url: AUTH + \"")){
                        line.trim().replace("  url: AUTH + \"","/auth/");
                    }
                    if(line.trim().contains("  url: API + \"")){
                        line.trim().replace("  url: API + \"","/api/");
                    }

                    if (line.trim().contains(prefix)) {
                        // 如果是，写入当前行到输出文件
                        writer.write(line);
                        writer.newLine();  // 换行
                        break;  // 找到匹配的前缀后，跳出循环，不再检查其他前缀
                    }
                }
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}